from concepts import *


class Terrain(Object):
    color   =_ (None)
    is_land =_ (True)
    
    tile      = Attribute()
    position  = Attribute()
    x         = position._.x
    y         = position._.y
    
    @property
    def is_water(self):
        return not self.is_land
    
    def day(self, day, month, year):
        pass


class FlatTerrain(Terrain):
    pass


class DifficultTerrain(Terrain):
    pass


class WaterTerrain(Terrain):
    is_land =_ (False)


class Grass(FlatTerrain):
    pass


class Sea(WaterTerrain):
    is_static =_ (False)


class Lake(WaterTerrain):
    is_static =_ (True)


class Forest(DifficultTerrain):
    pass
